Systems and methods for implementing a user interface for multiple simultaneous instant messaging, conference and chat room sessions

ABSTRACT

An exemplary method involves displaying a single user interface window having one or more of a list area, a messages area, and a message creation area. The method also involves displaying in the list area information about at least one one-to-one instant messaging session and/or at least one conference instant messaging session and/or at least one chat room session in which a user is participating. The method also involves displaying in the messages area messages corresponding to the at least one one-to-one instant messaging session and/or the at least one conference instant messaging session and/or the at least one chat room session. The method also involves displaying in the message creation area a new message to be sent from the user to one or more other participants of the at least one one-to-one instant messaging session and/or the at least one conference instant messaging session and/or the at least one chat room session.

TECHNICAL FIELD

The present invention relates generally to computers andcomputer-related technology. More specifically, the present inventionrelates to systems and methods for implementing a user interface formultiple simultaneous instant messaging, conference and chat roomsessions.

BACKGROUND

Instant messaging refers to the process of exchanging text messagesbetween two or more people. Instant messaging differs from e-mail inthat conversations happen in real time. The parties in the conversationtypically see each line of text right after it is typed (line-by-line).Also known as a “chatting,” instant messaging has become very popularfor both business and personal use.

An instant messaging (hereinafter, “IM”) client may be used to sendinstant messages to and receive instant messages from other users. Manydifferent IM clients are known to those skilled in the art. Examples ofIM clients include Yahoo! Messenger, MSN Messenger, America Online'sInstant Messenger (AIM), and a variety of others including those basedon the Jabber Open XML Protocol.

Many IM clients support chatting between two users participating in aone-to-one fashion. This type of interaction will be referred to hereinas a one-to-one IM session. Many IM clients also support chattingbetween more than two users simultaneously. This type of interactionwill be referred to herein as a conference IM session.

A chat room is a web site or an online service where people cancommunicate with each other in real time. Like instant messaging,conversations in a chat room happen in real time. A user who is loggedin to a chat room may enter messages which are immediately displayed toother users who are also logged in to the chat room. Chat rooms may beused for a variety of purposes, such as keeping in touch with friendsand relatives, coordinating meetings with business colleagues, and soforth.

A chat client may be used to participate in chat room conversations.There are many dedicated chat clients available. Some chat systems arerun from a web server. A web browser can act as a chat client. Chatclient software may also come as part of a package of communication andcollaboration tools, such as Microsoft NetMeeting®. A conversationbetween two or more users in a chat room will be referred to herein as achat room session.

There are several drawbacks associated with known user interfaces forone-to-one IM sessions, conference IM sessions, and chat room sessions.These drawbacks are especially noticeable when there are multiplesimultaneous one-to-one IM sessions, conference IM sessions, and/or chatroom sessions taking place. Accordingly, benefits may be realized byimproved systems and methods for implementing a user interface forone-to-one IM sessions, conference IM sessions, and chat room sessions.

BRIEF DESCRIPTION OF THE DRAWINGS

Exemplary embodiments of the invention will become more fully apparentfrom the following description and appended claims, taken in conjunctionwith the accompanying drawings. Understanding that these drawings depictonly exemplary embodiments and are, therefore, not to be consideredlimiting of the invention's scope, the exemplary embodiments of theinvention will be described with additional specificity and detailthrough use of the accompanying drawings in which:

FIG. 1 is a functional block diagram which illustrates an exemplarysystem in which some embodiments may be practiced;

FIG. 2 illustrates an embodiment of a user interface for multiplesimultaneous one-to-one IM sessions, conference IM sessions and/or chatroom sessions;

FIG. 3 illustrates another embodiment of a user interface for multiplesimultaneous one-to-one IM sessions, conference™ sessions and/or chatroom sessions;

FIG. 4 illustrates another embodiment of a user interface for multiplesimultaneous one-to-one IM sessions, conference IM sessions and/or chatroom sessions;

FIG. 5 illustrates another embodiment of a user interface for multiplesimultaneous one-to-one IM sessions, conference IM sessions and/or chatroom sessions;

FIG. 6 illustrates another embodiment of a user interface for multiplesimultaneous one-to-one IM sessions, conference IM sessions and/or chatroom sessions;

FIG. 7 illustrates another embodiment of a user interface for multiplesimultaneous one-to-one IM sessions, conference IM sessions and/or chatroom sessions;

FIG. 8 is a flow diagram which illustrates an exemplary method forimplementing a user interface for multiple simultaneous one-to-one IMsessions, conference IM sessions and chat room sessions; and

FIG. 9 is a block diagram illustrating the major hardware componentstypically utilized in a computing device.

DETAILED DESCRIPTION

A method for implementing a user interface for multiple simultaneousone-to-one instant messaging sessions, conference instant messagingsessions and chat room sessions is disclosed. The method involvesdisplaying a single user interface window having one or more of a listarea, a messages area, and a message creation area. The method alsoinvolves displaying in the list area information about at least oneone-to-one instant messaging session and/or at least one conferenceinstant messaging session and/or at least one chat room session in whicha user is participating. The method also involves displaying in themessages area messages corresponding to the at least one one-to-oneinstant messaging session and/or the at least one conference instantmessaging session and/or the at least one chat room session. The methodalso involves displaying in the message creation area a new message tobe sent from the user to one or more other participants of the at leastone one-to-one instant messaging session and/or the at least oneconference instant messaging session and/or the at least one chat roomsession.

In some embodiments, identifying information about the otherparticipants of the at least one one-to-one instant messaging sessionand/or the at least one conference instant messaging session and/or theat least one chat room session is displayed in the list area. Theidentifying information may be displayed in different regions of thelist area corresponding to different one-to-one instant messagingsessions, conference instant messaging sessions, and chat room sessions.Alternatively, the identifying information may be displayed in a commonlist.

A session identifier may be displayed with each message that isdisplayed in the messages area. The session identifier may comprise atext characteristic.

The method may also involve receiving the new message to be sent. Insome embodiments receiving the new message to be sent involves receivingtext entered by the user in the message creation area. Alternatively, insome embodiments receiving the new message to be sent involvesdisplaying a list of pre-created messages, and receiving the user'sselection of one of the pre-created messages.

The method may also involve receiving the user's selection of one ormore recipients of the new message to be sent. The user's selection ofthe one or more recipients may be received via the list area.Alternatively, receiving the user's selection of the one or morerecipients may involve detecting that the user has activated at leastone remote control key, and identifying which of the at least oneone-to-one instant messaging session and/or the at least one conferenceinstant messaging session and/or the at least one chat room session isassociated with the at least one remote control key. Alternativelystill, receiving the user's selection of the one or more recipients ofthe new message to be sent involves receiving text entered by the userin the message creation area.

In some embodiments, recipient information may be displayed in themessage creation area. The recipient information identifies one or morerecipients of the new message.

The new message may be sent to one or more intended recipients based onsome action taken by the user. The action may be pressing a button on aremote control device or an input device.

In some embodiments, for each message that is displayed in the messagesarea, identifying information about a sender of the message may bedisplayed. Also, in some embodiments the messages area may bepartitioned into different regions corresponding to different one-to-oneinstant messaging sessions, conference instant messaging sessions, andchat room sessions. Also, in some embodiments an indication of at leastone input device control that is associated with each of the at leastone one-to-one instant messaging session and/or the at least oneconference instant messaging session and/or the at least one chat roomsession may be displayed. Also, in some embodiments the computing devicemay be a television.

A computer-readable medium for implementing the above-described methodfor implementing a user interface for multiple simultaneous one-to-oneinstant messaging sessions, conference instant messaging sessions andchat room sessions is also disclosed. The computer-readable mediumcomprises executable instructions for implementing the above-describedmethod.

In addition, a computing device configured to implement theabove-described method for implementing a user interface for multiplesimultaneous one-to-one instant messaging sessions, conference instantmessaging sessions and chat room sessions is also disclosed. Thecomputing device includes a processor and memory in electroniccommunication with the processor. Instructions are stored in the memory.The instructions are executable to implement the above-described method.

Various embodiments of the invention are now described with reference tothe Figures, where like reference numbers indicate identical orfunctionally similar elements. It will be readily understood that theembodiments of the present invention, as generally described andillustrated in the Figures herein, could be arranged and designed in awide variety of different configurations. Thus, the following moredetailed description of several exemplary embodiments of the presentinvention, as represented in the Figures, is not intended to limit thescope of the invention, as claimed, but is merely representative of theembodiments of the invention.

The word “exemplary” is used exclusively herein to mean “serving as anexample, instance, or illustration.” Any embodiment described herein as“exemplary” is not necessarily to be construed as preferred oradvantageous over other embodiments. While the various aspects of theembodiments are presented in drawings, the drawings are not necessarilydrawn to scale unless specifically indicated.

Those skilled in the art will appreciate that many features of theembodiments disclosed herein may be implemented as computer software,electronic hardware, or combinations of both. To clearly illustrate thisinterchangeability of hardware and software, various components will bedescribed generally in terms of their functionality. Whether suchfunctionality is implemented as hardware or software depends upon theparticular application and design constraints imposed on the overallsystem. Skilled artisans may implement the described functionality invarying ways for each particular application, but such implementationdecisions should not be interpreted as causing a departure from thescope of the present invention.

Where the described functionality is implemented as computer software,those skilled in the art will recognize that such software may includeany type of computer instruction or computer executable code locatedwithin a memory device and/or transmitted as electronic signals over asystem bus or network. Software that implements the functionalityassociated with components described herein may comprise a singleinstruction, or many instructions, and may be distributed over severaldifferent code segments, among different programs, and across severalmemory devices.

FIG. 1 is a functional block diagram which illustrates an exemplarysystem 100 in which some embodiments may be practiced. The system 100includes a computing device 102. Examples of computing devices 102include televisions, personal computers, personal digital assistants(PDAs), television set-top boxes, cellular telephones, intelligentappliances, and so forth.

The computing device 102 includes an IM client 104 and a chat client106. The computing device 102 is in electronic communication with othercomputing devices 110 via one or more computer networks 108. The othercomputing devices 110 may also include IM clients (not shown) and/orchat clients (not shown). In some cases the IM client 104 and chatclient 106 functionality may be supported by a single client module.

As indicated above, two users exchanging instant messages in aone-to-one fashion will be referred to herein as a one-to-one IMsession. The exchange of instant messages between more than two userswill be referred to herein as a conference IM session. The term “IMsession,” as used herein, refers to either a one-to-one IM session or aconference IM session. A conversation between two or more users in achat room will be referred to herein as a chat room session.

The IM client 104 may be used to set up and participate in one-to-one IMsessions and/or conference IM sessions with users of the other computingdevices 110. The chat client 106 may be used to set up and participatein chat room sessions with users of the other computing devices 110.

Known IM clients display a separate window for each one-to-one IMsession and conference IM session in which the user is participating.Similarly, known chat clients display a separate window for each chatroom session in which the user is participating. Thus, with known IM andchat clients, the user needs to change focus between different windowswhen he or she is participating in multiple simultaneous one-to-one IMsessions, conference IM sessions, and/or chat room sessions.

There are several drawbacks with this design, particularly for atelevision user who is interacting passively with an IM/chat client on atelevision. On a television screen typically only one window may bevisible at a time, because the distance between the user and thetelevision is typically great enough to warrant a large text font size,which in turn requires a larger screen area for each IM and chat roomsession window. Thus, the user may be required to repeatedly switchbetween different windows, requiring repeated clicking of remotecontrol/input device buttons. This may be inconvenient and frustratingfor the user, and may make it difficult for the user to activelyparticipate in multiple simultaneous IM/chat room sessions. Even in apersonal computer environment such a design may be inconvenient,particularly if the user's monitor is not large enough to displaymultiple windows simultaneously.

To address at least some of these issues, the computing device 102 alsoincludes a user interface generator 112. The user interface generator112 is configured to generate an improved user interface for IM/chatroom sessions that the user participates in. The user interface isparticularly convenient for multiple simultaneous one-to-one IMsessions, conference IM sessions and/or chat room sessions.Advantageously, the user interface displays messages corresponding todifferent IM/chat room sessions in a single window. This window alsoincludes controls which allow the user to send messages to participantsof the different IM/chat room sessions. A list of the other participantsin the current IM/chat room sessions may also be displayed. Thus, theuser interface allows the user to participate more easily in multiplesimultaneous conversations corresponding to different IM/chat roomsessions, without the need to change focus between different windows.

The embodiment of the user interface generator 112 shown in FIG. 1includes a list area component 114. The list area component 114generates a list area within the user interface. The list area displaysinformation about the current one-to-one IM sessions, conference IMsessions and chat room sessions in which the user is participating. Thisinformation may identify the other participants of the current IM/chatroom sessions. For example, if the user has an active chat room session,the list area may display the usernames of all of the individuals whohave logged in to the chat room.

The user interface generator 112 also includes a messages area component116. The messages area component 116 generates a messages area withinthe user interface. The messages area displays messages corresponding tothe current IM/chat room sessions, i.e., messages that have beenreceived from or sent to the other participants of the current IM/chatroom sessions. The messages area may be arranged so that the user mayeasily identify which IM/chat room session a particular messagecorresponds to.

The user interface generator 112 also includes a message creation areacomponent 118. The message creation area component 118 generates amessage creation area within the user interface. From time to time, theuser may create new messages to send to one or more of the otherparticipants of the current IM/chat room sessions. If the user iscreating a new message to send, this message may be displayed in themessage creation area. In addition, the message creation area mayinclude controls which allow the user to more easily create the newmessage, and also to select which of the other IM/chat room sessionparticipants will receive the message.

FIG. 2 illustrates an embodiment of a user interface 220 for multiplesimultaneous one-to-one IM sessions, conference IM sessions and/or chatroom sessions. The user interface 220 includes a single user interfacewindow 222. A list area 224, a messages area 226, and a message creationarea 228 are displayed within the user interface window 222.

The list area 224 displays information about the current one-to-one IMsessions, conference IM sessions and chat room sessions in which theuser is participating. In the illustrated embodiment, this informationincludes the usernames of the other participants of the IM/chat roomsessions in which the user is involved. The user is participating in twoone-to-one IM sessions, one with Mike and one with Lisa. The user isalso participating in a single conference IM session. The name of theconference session is cfr1, and it includes three participants: Cindy,Xin and Kate. The user is also participating in a single chat roomsession. The name of the chat room session is sitcom lovers. Two of theparticipants in the chat room session are shown in the list area 224,butterfly24 and jas18. A scroll bar 230 is displayed alongside the chatroom session participants. The user may move the scroll bar 230 in orderto see additional participants in the chat room session.

The list area 224 is partitioned into different regions 232corresponding to different one-to-one IM sessions, conference IMsessions, and chat room sessions. In the illustrated embodiment, thelist area 224 is partitioned so that there is a separate region 232 inthe list area 224 for each type of IM/chat room session that the user isparticipating in. Thus, the usernames of the other participants in allof the one-to-one IM sessions are shown in a first region 232 a of thelist area 224, the usernames of the other participants in all of theconference IM sessions are shown in a second region 232 b of the listarea 224, and the usernames of the other participants in all of the chatroom sessions are shown in a third region 232 c of the list area 224.

Separators 234 are displayed between the different regions 232 of thelist area, in order to visually differentiate participants in thedifferent types of IM/chat room sessions from one another. A firstseparator 234 a is displayed between the first region 232 a of the listarea 224 comprising the one-to-one IM session participants and thesecond region 232 b of the list area 224 comprising the conference IMsession participants. A second separator 234 b is displayed between thesecond region 232 b of the list area 224 comprising the conference IMsession participants and the third region 232 c of the list area 224comprising the chat room session participants.

The messages area 226 displays messages 236 corresponding to the currentIM/chat room sessions, i.e., messages 236 that have been received fromor sent to the other participants of the current IM/chat room sessions.As shown, messages 236 from different IM/chat room sessions may bedisplayed together in a common list. The messages 236 may be displayedin the order in which they were received. A scroll bar 238 is providedto allow the user to scroll through the list of messages 236.

For each message 236 that is displayed in the messages area 226,information that identifies the sender of the message may be displayed.In the illustrated embodiment, this information is the sender's username240. The sender's username 240 is displayed at the beginning of themessage 236. For example, in the first message 236 a that is displayed,“Mike” is the sender's username 240 a, and “Hi Adam, are you watchingthe Mariners game?” is the text of the message 236 a.

For messages 236 that the user has sent, information that identifies therecipient of the message may also be displayed. For example, in thesecond message 236 b that is displayed, “Adam” is the username 240 b ofthe user who has sent the message, “Mike” is the recipient's usemrname242, and “Yep” is the text of the message 236 b.

If the user is creating a new message 250 to send, this new message 250may be displayed in the message creation area 228. The new message 250may be entered by the user in a variety of ways. In the illustratedembodiment, the user has entered the new message 250 by typing text in atext box 244 within the message creation area 228.

Recipient information may be displayed in the message creation area 228to identify the participant(s) to whom the message is sent. However, ifthe user has not yet selected the recipient(s) for the message, amessage to that effect may be displayed in the message creation area228. In the illustrated embodiment, the user has not selected arecipient for the message. Thus, the message “no recipient assigned yet”is displayed in the message creation area 228.

FIG. 3 illustrates another embodiment of a user interface 320 formultiple simultaneous one-to-one IM sessions, conference IM sessionsand/or chat room sessions. As before, the user interface 320 includes asingle user interface window 322. A list area 324, a messages area 326,and a message creation area 328 are displayed within the user interfacewindow 322.

As before, the list area 324 displays the usernames of the otherparticipants of the IM/chat room sessions that the user is involved in.However, in the illustrated embodiment, the usernames are displayed in acommon list. In other words, the usernames are displayed in a singleregion of the list area 324 without separators.

As before, the messages area 326 displays messages 336 corresponding tothe current IM/chat room sessions. These messages 336 are displayedtogether in a common list. The messages area 326 is arranged so that theuser may easily identify which IM/chat room session a particular messagecorresponds to. In the illustrated embodiment, this is accomplished bydisplaying a session identifier with each message 336 in the messagesarea 326. The session identifier displayed with a particular messageidentifies the IM/chat room session that the message 336 corresponds to.

In the illustrated embodiment, the session identifier is a textcharacteristic. Messages 336 corresponding to different IM/chat roomsessions are shown using different fonts. More specifically, themessages 336 a, 336 b corresponding to the one-to-one IM session withMike are shown in a different font than the message 336 c correspondingto the one-to-one IM session with Lisa, which is shown in a differentfont than the messages 336 d, 336 e corresponding to the conference IMsession with cfr1, and so on.

There may be many participants in conference IM sessions and chat roomsessions. Thus, when the user looks at a message 336 from a participantof a conference IM session or a chat room session, it may not be readilyapparent which IM/chat room session the message 336 corresponds to. Forexample, consider the message 336 d from Cindy shown in the messagesarea 326 in FIG. 3. Even though the username “Cindy” is displayed in themessage, the user may not immediately know whether Cindy isparticipating in the conference IM session “cfr1” or the chat roomsession “sitcom lovers.”

To address this issue, a session identifier key 346 may be shown. Thenames of the conference IM sessions and chat room sessions are shown inthe session identifier key 346 in the same font that is used to displaythe corresponding messages in the messages area 326. For example, thename of the conference IM session “cfr1” is shown in the sessionidentifier key 346 in the same font that is used to display thecorresponding messages 336 d, 336 e in the messages area 326. Similarly,the name of the chat room session “sitcom lovers” is shown in thesession identifier key 346 in the same font that is used to display thecorresponding message 336 f in the messages area 326. In this way, ifthe user is unsure which IM/chat room session a particular message 336corresponds to, the user can find out by quickly glancing at the sessionidentifier key 346.

In the illustrated embodiment, the session identifier key 346 is shownin the list area 324. However, in alternative embodiments, the sessionidentifier key 346 may be shown in the messages area 326 or elsewhere inthe user interface window 322. Alternatively session identifier keyinformation may be displayed along with each message 336 in the messagearea 326.

In alternative embodiments, session identifiers may comprise textcharacteristics other than fonts. For example, messages 336corresponding to different IM/chat room sessions may be displayed usingdifferent text sizes, colors, etc. In other embodiments, the sessionidentifier may be something other than a text characteristic. Forexample, each IM/chat room session may be associated with a unique icon,and the icon corresponding to the appropriate IM/chat room session maybe displayed along with each message 336.

FIG. 4 illustrates another embodiment of a user interface 420 formultiple simultaneous one-to-one IM sessions, conference IM sessionsand/or chat room sessions. As before, the user interface 420 includes asingle user interface window 422. A list area 424, a messages area 426,and a message creation area 428 are displayed within the user interfacewindow 422.

As before, the messages area 426 displays messages 436 corresponding tothe current IM/chat room sessions. The messages area 426 is arranged sothat the user may easily identify which IM/chat room session aparticular message corresponds to. In the illustrated embodiment, thisis accomplished by partitioning the messages area 426 into differentregions 448 corresponding to different one-to-one IM sessions,conference IM sessions, and chat room sessions.

In the illustrated embodiment, the messages area 426 is partitioned sothat there is a separate region 448 in the messages area 426 for eachIM/chat room session that the user is participating in. Thus, messages436 a corresponding to the one-to-one IM session with Mike are displayedin a first region 448 a of the messages area 426. Messages 436 bcorresponding to the one-to-one IM session with Lisa are displayed in asecond region 448 b of the messages area 426. Messages 436 ccorresponding to the conference IM session named “cfr1” are displayed ina third region 448 c of the messages area 426. Messages 436 dcorresponding to the chat room session named “sitcom lovers” aredisplayed in a fourth region 448 d of the messages area 426.

In alternative embodiments, the messages area 426 may be partitioneddifferently. For example, the messages area 426 may be partitioned sothat the messages 436 corresponding to the same type of IM/chat roomsession are shown in the same region of the messages area 426. Forexample, the messages area 426 may be partitioned so that messages fromall of the one-to-one IM sessions are shown in the same region of themessages area 426, messages from all of the conference IM sessions areshown in the same region of the messages area 426, and messages from allof the chat room sessions are shown in the same region of the messagesarea 426.

FIG. 5 illustrates another embodiment of a user interface 520 formultiple simultaneous one-to-one IM sessions, conference IM sessionsand/or chat room sessions. As before, the user interface 520 includes asingle user interface window 522. A list area 524, a messages area 526,and a message creation area 528 are displayed within the user interfacewindow 522.

As indicated above, the user may create a new message 550 to be sent toone or more other participants of a current one-to-one IM session,conference IM session, and/or chat room session. As shown, the newmessage 550 may be displayed in the message creation area 528.

The user may select the recipient(s) of the new message 550 in a varietyof ways. For example, the user may select the recipient(s) of the newmessage via the list area 524. In the illustrated embodiment, an inputdevice has been used to highlight “Lisa” in the list area 524. A controlon the input device (e.g., a “Select” button) may then be used toindicate the user's selection of Lisa as the recipient of the newmessage 550. Different types of input devices may be used, depending onthe type of environment in which embodiments disclosed herein arepracticed. For example, in a television environment, the input devicemay be a remote control device. In a personal computing environment, theinput device may be a mouse, keyboard, etc. In alternative embodiments,the user may select the recipient(s) of the new message by simplyentering text into a text box 544 within the message creation area 528.

Once the user has selected one or more recipients for the new message550, recipient information is also displayed in the message creationarea 528 along with the new message 550. The recipient informationidentifies the recipient(s) of the new message 550. In the illustratedembodiment, the recipient information is the username 552 of therecipient of the new message. Because the user has selected Lisa toreceive the new message, the username “Lisa” 552 is displayed in themessage creation area 528.

FIG. 6 illustrates another embodiment of a user interface 620 formultiple simultaneous one-to-one μM sessions, conference IM sessionsand/or chat room sessions. As before, the user interface 620 includes asingle user interface window 622. A list area 624, a messages area 626,and a message creation area 628 are displayed within the user interfacewindow 622.

As indicated above, from time to time the user may create a new message650 to be sent to one or more of the other participants of a one-to-oneIM session, a conference IM session, and/or a chat room session. Toenable the user to easily select one or more recipients of the newmessage 650, one or more input device controls (e.g., buttons on aremote control device, keys on a keyboard, etc.) may be associated witheach one-to-one IM session, conference IM session, and chat roomsession. When the user activates a control that is associated with aparticular IM/chat room session, the participant(s) of that IM/chat roomsession are selected as the recipient(s) of the new message 650. Morespecifically, the user interface generator 112 detects which control (orcombination of controls) the user has activated. The user interfacegenerator 112 then identifies which IM/chat room session is associatedwith the activated control(s).

In the illustrated embodiment, button number “1” on an input device isassociated with Mike. Thus, when the user presses button number “1,”this has the effect of selecting Mike as the recipient of the newmessage 650. Similarly, button number “2” on the input device isassociated with Lisa. Therefore, pressing button number “2” has theeffect of selecting Lisa as the recipient of the new message 650. Buttonnumber “3” on the input device is associated with the conference IMsession named cfr1. Therefore, pressing button number “3” has the effectof selecting the other participants of the conference IM session namedcfr1 as the recipients of the new message 650. The combination ofbuttons “1” and “2” on the input device is associated with the chat roomsession named sitcom lovers. Therefore, pressing buttons “1” and “2”substantially simultaneously has the effect of selecting the otherparticipants of the chat room session named sitcom lovers as therecipients of the new message 650.

An indication of the input device control (or combination of controls)associated with an IM/chat room session is displayed in the list area624. This enables the user to quickly see which input control(s) shouldbe activated in order to send a message to the participant(s) of aparticular IM/chat room session. In the illustrated embodiment, thenumber “1” is displayed alongside Mike in the list area 624, the number“2” is displayed alongside Lisa in the list area 624, the number “3” isdisplayed alongside the conference IM session named cfr1 in the listarea 624, and the numbers “1” and “2” are displayed alongside the chatroom session named sitcom lovers in the list area 624.

FIG. 7 illustrates another embodiment of a user interface 720 formultiple simultaneous one-to-one IM sessions, conference IM sessionsand/or chat room sessions. As before, the user interface 720 includes asingle user interface window 722. A list area 724, a messages area 726,and a message creation area 728 are displayed within the user interfacewindow 722.

As indicated above, from time to time the user may create a new message750 to be sent to one or more of the other participants of a one-to-oneIM session, a conference IM session, and/or a chat room session. In someembodiments, the user may create the new message 750 by selecting thenew message 750 from a list 752 of pre-created messages.

In the illustrated embodiment, the message creation area 728 includes a“Show List” button 754. When the user activates the “Show List” button754, a list 752 of pre-created messages is displayed. The list 752 ofpre-created messages may include messages created by the IM client 104,the chat client 106, the user interface generator 112, and/or the user.

An input device may be used to select a message from the list 752 ofpre-created messages. In the illustrated embodiment, an input device hasbeen used to highlight a particular message in the list 752 ofpre-created messages. A control on the input device (e.g., a “Select”button) may then be used to indicate the user's selection of thehighlighted message.

Once the user has selected a message from the list 752 of pre-createdmessages, the text of the selected message may be displayed in themessage creation area 728. The user may alter the message before it issent to the message recipient(s). The message can be sent to theintended recipient(s) when the user takes an action to send it (forexample, by pressing an input device button). In some embodimentsnumerical keys on an input device may be assigned to pre-createdmessages. In some embodiments all pre-created messages may be displayedin a separate region of the user interface displayed by the IM client.

FIG. 8 is a flow diagram which illustrates an exemplary method 800 forimplementing a user interface for multiple simultaneous one-to-one IMsessions, conference IM sessions and chat room sessions. The method 800may be performed by the user interface generator 112.

A single user interface window 222 is displayed 802. The user interfacewindow 222 includes a list area 224, a messages area 226, and a messagecreation area 228. In some embodiments only one or more of these areasmay be shown, and the user may be able to select which of the list area224, the messages area 226 and the message creation area 228 aredisplayed. For example, the user may choose to display the list area 224and the messages area 226, but not the message creation area 228. Insome embodiments, the user may select which of the list area 224, themessages area 226 and the message creation area 228 are displayed viaconfiguration of the IM client.

Information about at least one one-to-one IM session, conference IMsession, and chat room session is displayed 804 in the list area 224. Insome embodiments, this information may include the usernames of theother participants of the IM/chat room sessions in which the user iscurrently involved.

Messages 236 corresponding to the current one-to-one IM sessions,conference IM sessions, and chat room sessions are displayed 806 in themessages area 226. Messages 236 from different IM/chat room sessions maybe displayed together in a common list. Alternatively, the messages area226 may be partitioned into different regions corresponding to differentIM/chat room sessions.

From time to time, the user may create a new message 250 to send to oneor more participants in the current IM/chat room sessions. When thisoccurs, the user interface generator 112 receives 808 the new message250. The user may input the new message in a variety of ways. Forexample, the user may enter the text of the new message in the messagecreation area 228. As another example, the new message may be selectedfrom a list 752 of pre-created messages.

The user's selection of one or more recipient(s) for the new message 250is also received 810. The user may select the recipient(s) of the newmessage 250 in a variety of ways. For example, the user may select therecipient(s) of the new message 250 by designating one or moreparticipants of other IM/chat room sessions that are displayed in thelist area 224, by entering text into the message creation area 228, byactivating an input device control that is associated with a particularIM/chat room session, and so forth.

When the new message has been received 808, it is displayed 812 in themessage creation area 228. Recipient information 552, such as theusername(s) of the message recipient(s), may also be displayed alongwith the new message 250 in the message creation area 228. The messagecan be sent 813 to the intended recipient(s) when the user takes anaction to send it (for example, by pressing a button on an inputdevice).

In view of the foregoing, the embodiments disclosed herein offer severaladvantages not available in conventional approaches. The embodimentsdisclosed herein relate to a user interface which displays messagescorresponding to different IM/chat room sessions in a single window.This window also includes controls which allow the user to send messagesto participants of the different IM/chat room sessions. A list of theother participants in the current IM/chat room sessions may also bedisplayed. Thus, the user interface allows a user to participate moreeasily in multiple simultaneous conversations corresponding to differentIM/chat room sessions, without the need to change focus betweendifferent windows.

FIG. 9 is a block diagram illustrating the major hardware componentstypically utilized in a computing device 902. The illustrated componentsmay be located within the same physical structure or in separatehousings or structures.

The computing device 902 includes a processor 901 and memory 903. Theprocessor 901 controls the operation of the computing device 902 and maybe embodied as a microprocessor, a microcontroller, a digital signalprocessor (DSP) or other device known in the art. The processor 901typically performs logical and arithmetic operations based on programinstructions stored within the memory 903.

As used herein, the term memory 903 is broadly defined as any electroniccomponent capable of storing electronic information, and may be embodiedas read only memory (ROM), random access memory (RAM), magnetic diskstorage media, optical storage media, flash memory devices in RAM,on-board memory included with the processor 901, EPROM memory, EEPROMmemory, registers, etc. The memory 903 typically stores programinstructions and other types of data. The program instructions may beexecuted by the processor 901 to implement some or all of the methodsdisclosed herein.

The computing device 902 typically also includes one or morecommunication interfaces 905 for communicating with other electronicdevices. The communication interfaces 905 may be based on wiredcommunication technology, wireless communication technology, or both.Examples of different types of communication interfaces 905 include aserial port, a parallel port, a Universal Serial Bus (USB), an Ethernetadapter, an IEEE 1394 bus interface, a small computer system interface(SCSI) bus interface, an infrared (IR) communication port, a Bluetoothwireless communication adapter, and so forth.

The computing device 902 typically also includes one or more inputdevices 907 and one or more output devices 909. Examples of differentkinds of input devices 907 include a keyboard, mouse, microphone, remotecontrol device, button, joystick, trackball, touchpad, lightpen, etc.Examples of different kinds of output devices 909 include a speaker,printer, etc. One specific type of output device which is typicallyincluded in a computer system is a display device 911. Display devices911 used with embodiments disclosed herein may utilize any suitableimage projection technology, such as a cathode ray tube (CRT), liquidcrystal display (LCD), light-emitting diode (LED), gas plasma,electroluminescence, or the like. A display controller 913 may also beprovided, for converting data stored in the memory 903 into text,graphics, and/or moving images (as appropriate) shown on the displaydevice 911.

Of course, FIG. 9 illustrates only one possible configuration of acomputing device 902. Those skilled in the art will recognize thatvarious other architectures and components may be utilized. In addition,various standard components are not illustrated in order to avoidobscuring aspects of the invention.

While specific embodiments and applications of the present inventionhave been illustrated and described, it is to be understood that theinvention is not limited to the precise configuration and componentsdisclosed herein. Various modifications, changes, and variations whichwill be apparent to those skilled in the art may be made in thearrangement, operation, and details of the methods and systems of thepresent invention disclosed herein without departing from the spirit andscope of the invention.

1. In a computing device, a method for implementing a user interface for multiple simultaneous one-to-one instant messaging sessions, conference instant messaging sessions and chat room sessions, the method comprising: displaying a single user interface window having one or more of a list area, a messages area, and a message creation area; displaying in the list area information about at least one one-to-one instant messaging session and/or at least one conference instant messaging session and/or at least one chat room session in which a user is participating; displaying in the messages area messages corresponding to the at least one one-to-one instant messaging session and/or the at least one conference instant messaging session and/or the at least one chat room session; and displaying in the message creation area a new message to be sent from the user to one or more other participants of the at least one one-to-one instant messaging session and/or the at least one conference instant messaging session and/or the at least one chat room session.
 2. The method of claim 1, further comprising displaying in the list area identifying information about the other participants of the at least one one-to-one instant messaging session and/or the at least one conference instant messaging session and/or the at least one chat room session.
 3. The method of claim 2, wherein the identifying information is displayed in different regions of the list area corresponding to different one-to-one instant messaging sessions, conference instant messaging sessions, and chat room sessions.
 4. The method of claim 2, wherein the identifying information is displayed in a common list.
 5. The method of claim 1, further comprising displaying a session identifier with each message that is displayed in the messages area.
 6. The method of claim 5, wherein the session identifier comprises a text characteristic.
 7. The method of claim 1, further comprising partitioning the messages area into different regions corresponding to different one-to-one instant messaging sessions, conference instant messaging sessions, and chat room sessions.
 8. The method of claim 1, further comprising, for each message that is displayed in the messages area, displaying identifying information about a sender of the message.
 9. The method of claim 1, further comprising receiving the new message to be sent.
 10. The method of claim 9, wherein receiving the new message to be sent comprises receiving text entered by the user in the message creation area.
 11. The method of claim 9, wherein receiving the new message to be sent comprises: displaying a list of pre-created messages; and receiving the user's selection of one of the pre-created messages.
 12. The method of claim 1, further comprising receiving the user's selection of one or more recipients of the new message to be sent.
 13. The method of claim 12, wherein the user's selection of the one or more recipients is received via the list area.
 14. The method of claim 12, wherein receiving the user's selection of the one or more recipients comprises: detecting that the user has activated at least one remote control key; and identifying which of the at least one one-to-one instant messaging session and/or the at least one conference instant messaging session and/or the at least one chat room session is associated with the at least one remote control key.
 15. The method of claim 1, further comprising, for each of the at least one one-to-one instant messaging session and/or the at least one conference instant messaging session and/or the at least one chat room session, displaying an indication of at least one input device control that is associated therewith.
 16. The method of claim 12, wherein receiving the user's selection of the one or more recipients of the new message to be sent comprises receiving text entered by the user in the message creation area.
 17. The method of claim 1, further comprising displaying recipient information in the message creation area, wherein the recipient information identifies one or more recipients of the new message.
 18. The method of claim 1, further comprising sending the new message to one or more intended recipients based on some action taken by the user.
 19. The method of claim 18, where the action is pressing a button on a remote control device or an input device.
 20. The method of claim 1, wherein the computing device is a television.
 21. A computer-readable medium comprising executable instructions for implementing a method in a computing device for implementing a user interface for multiple simultaneous one-to-one instant messaging sessions, conference instant messaging sessions and chat room sessions, the method comprising: displaying a single user interface window having one or more of a list area, a messages area, and a message creation area; displaying in the list area information about at least one one-to-one instant messaging session and/or at least one conference instant messaging session and/or at least one chat room session in which a user is participating; displaying in the messages area messages corresponding to the at least one one-to-one instant messaging session and/or the at least one conference instant messaging session and/or the at least one chat room session; and displaying in the message creation area a new message to be sent from the user to one or more other participants of the at least one one-to-one instant messaging session and/or the at least one conference instant messaging session and/or the at least one chat room session.
 22. A computing device configured to implement a user interface for multiple simultaneous one-to-one instant messaging sessions, conference instant messaging sessions and chat room sessions, the computing device comprising: a processor; memory in electronic communication with the processor; and instructions stored in the memory, the instructions being executable to implement a method comprising: displaying a single user interface window having one or more of a list area, a messages area, and a message creation area; displaying in the list area information about at least one one-to-one instant messaging session and/or at least one conference instant messaging session and/or at least one chat room session in which a user is participating; displaying in the messages area messages corresponding to the at least one one-to-one instant messaging session and/or the at least one conference instant messaging session and/or the at least one chat room session; and displaying in the message creation area a new message to be sent from the user to one or more other participants of the at least one one-to-one instant messaging session and/or the at least one conference instant messaging session and/or the at least one chat room session. 